package org.codeart.apipassenger.service;

import org.codeart.apipassenger.remote.ServicePriceClient;
import org.codeart.common.request.EstimatedPriceDTO;
import org.codeart.common.response.PriceResponse;
import org.codeart.common.util.R;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class PriceService {

    @Autowired
    private ServicePriceClient servicePriceClient;

    /**
     * 根据出发地和目的地的经纬度计算预估价格
     * @param depLongitude  出发地经度
     * @param depLatitude   出发地纬度
     * @param destLongitude 目的地经度
     * @param destLatitude  目的地纬度
     * @return 价格
     */
    public PriceResponse estimatedPrice(String depLongitude, String depLatitude, String destLongitude, String destLatitude,
                                 String cityCode, String vehicleType) {
        EstimatedPriceDTO estimatedPriceDTO = new EstimatedPriceDTO();
        estimatedPriceDTO.setDepLongitude(depLongitude)
                         .setDepLatitude(depLatitude)
                         .setDestLongitude(destLongitude)
                         .setDestLatitude(destLatitude)
                         .setCityCode(cityCode)
                         .setVehicleType(vehicleType);
        R<PriceResponse> r = servicePriceClient.estimatedPrice(estimatedPriceDTO);
        return r.getData();
    }

}
